﻿@using KPIS.GERP.Models.ICM
@model IEnumerable<KPIS.GERP.Models.ICM.RequestParcel>

@{
    ViewBag.Title = "รายการขอเบิก [RP]";
    ViewBag.id = KPIS.GERP.WEB.GIMS.Class.GimsMembership.CurrentEmpId;
    // ViewBag.name = WebSecurityX.CurrentUserName;
    ViewBag.name = GimsMembership.CurrentUserName;
}


<div id="e8" class="row-fluid">
    <div id="e9" class="block-button-menu-above">
        @Html.ButtonAdd()
    </div>

    @Html.ValidationSummary(true, "", new { @class = "alert alert-error" })

    <div class="row-fluid">
        <div  class="table-header span12">
            <div class="span10">
                @ViewBag.Title
            </div>
            @Html.Partial("_ExportButton")
        </div>
    </div>

    <table id="table_request_parcel" class="table table-striped table-bordered table-hover"
           aria-describedby="table_request_parcel_info">
        <thead>
            <tr>
                <th style="width:70px">@Html.DisplayNameFor(model => model.CreatedWhen)</th>
                <th style="width:70px">@Html.DisplayNameFor(model => model.IcmReqCode)</th>
                <th style="width:120px">@Html.DisplayNameFor(model => model.JobSiteId)</th>
                <th >@Html.DisplayNameFor(model => model.ProjectId)</th>
                <th style="width:110px">@Html.DisplayNameFor(model => model.RequestBy)</th>
                <th >@Html.DisplayNameFor(model => model.RequestName)</th>
                <th style="width:100px">@Html.DisplayNameFor(model => model.RecordStatus)</th>
                <th>&nbsp;</th>
            </tr>
        </thead>
        @{
            int i1 = 0;
            Dictionary<string, string> statusNames = new Dictionary<string, string>();
            Dictionary<string, string> cssClasses = new Dictionary<string, string>();
            var service = new KPIS.GERP.WEB.GIMS.RequestParcelService.RequestParcelServiceClient();
            var requestParcelDtls = service.SelectRequestParcelDtl(new RequestParcelDtl { RecordStatus = "!D" }, null).ToList();
            
            foreach (var statusCode in new[] {"U", "W", "D", "A", "P", "R", "J", "C"})
            {
                statusNames[statusCode] = service.GetStatusName(statusCode);
            }
            cssClasses["U"] = "text-info";
            cssClasses["A"] = "text-success";
            cssClasses["W"] = "text-warning";
            cssClasses["P"] = "muted";
            cssClasses["J"] = "red";
            cssClasses["D"] = "red";
            cssClasses["C"] = "red";
            cssClasses["R"] = "muted";
        }
        <tbody>
            @foreach (var m in Model.OrderByDescending(o=>o.IcmReqCode))
            { 
                <tr>
                    <td><span style="display: none">@((i1++).ToString("00000"))</span>@m.CreatedWhen.Value.ToString("d/M/yyyy")</td>
                    <td>@Html.ActionLink(@m.IcmReqCode, "Details", new { id = m.ReqParcelId }, new{style = "font-weight:bold;"})</td>
                    <td>@Html.DisplayFor(modelItem => m.JobSite.Name)</td>
                    <td>@Html.DisplayFor(modelItem => m.Project.Name)</td>
                    <td>@Html.DisplayFor(modelItem => m.Employee.FullName)</td>
                    <td>@Html.DisplayFor(modelItem => m.RequestName)</td>
                    <td class="@(cssClasses[m.RecordStatus == "U" ? "W" : m.RecordStatus])" style="text-align: center;font-weight: bold;" title="@m.RecordStatus">
                        @(statusNames[m.RecordStatus == "U" ? "W" : m.RecordStatus])
                    </td>
                    <td class="td-actions">
                        <div class="hidden-phone visible-desktop btn-group">
                        
                            <a class="btn btn-mini btn-gray" data-rel="tooltip" href="@Url.Action("Details", new {id=m.ReqParcelId})" 
                               role="button" data-original-title="" title="ดูรายละเอียด @m.IcmReqCode"><i class="icon-search bigger-120"></i></a>

                            @if (m.RecordStatus == "U" || m.RecordStatus == "W" || m.RecordStatus == "R")
                            {
                                <a class="btn btn-mini btn-success" data-rel="tooltip" href="@Url.Action("Edit", new {id=m.ReqParcelId})"
                                    role="button" data-original-title="" title="แก้ไข @m.IcmReqCode"><i class="icon-edit bigger-120"></i></a>
                            }
                        
                            @if (m.RecordStatus == "U" || m.RecordStatus == "W")
                            {
                                <a class="btn btn-mini btn-danger" data-rel="tooltip"
                                   onclick=" bootbox.confirm('ท่านต้องการยืนยันการลบข้อมูลนี้หรือไม่ ?',
                                   function(result) {if (result)window.location.href='@Url.Action("Delete", new {id=m.ReqParcelId})' ;
                                   }); " role=" button" title="ลบ @m.IcmReqCode">
                                    <i class="icon-trash bigger-120"></i>
                                </a>
                            }
                        
                            @if (m.RecordStatus == "U" || m.RecordStatus == "W" )
                            { 
                                using (Html.BeginForm("CreateAskApproval", "AskForApproval", FormMethod.Post, new { id = "formApprove", @class = "form-horizontal" }))
                                { 
                                    //var typeSeqขอเบิก = (int)ApproveProcessEnum.ขออนุมัติขอเบิก;
                                    /*
                                AppPrcGrpId	Code	Name	        AppPrcId	Name
                                6	        PP	คำขออนุมัติแจ้งความประสงค์	6	คำขออนุมัติแจ้งความประสงค์
                                7	            ขอเบิกวัสดุครุภัณฑ์	    7	ขอเบิกวัสดุครุภัณฑ์                <-- Request Parcel View
                                8	        PR	ขออนุมัติขอซื้อขอจ้าง	    8	ขออนุมัติขอซื้อขอจ้างเกิน๑๐๐๐๐๐บาท
                                8	        PR	ขออนุมัติขอซื้อขอจ้าง	    9	ขออนุมัติขอซื้อขอจ้างไม่เกิน๑๐๐๐๐๐บาท
                                10	        PO-Purchase	ขออนุมัติใบสั่ง	10	ขออนุมัติใบสั่งเกิน๕๐๐๐๐๐บาท       
                                10	        PO-Purchase	ขออนุมัติใบสั่ง	11	ขออนุมัติใบสั่งไม่เกิน๕๐๐๐๐๐บาท     
                                12	        BD	ขออนุมัติประกาศ	        12	ขออนุมัติประกาศ
                                13	        PO-Contract	ขออนุมัติงานสัญ	13	ขออนุมัติงานสัญญา               
                                14	        DN	ขออนุมัติการตรวจรับ	    24	การตรวจรับไม่เกิน๕๐๐๐๐บาท 
                                14	        DN	ขออนุมัติการตรวจรับ	    25	การตรวจรับเกิน๕๐๐๐๐บาท */
                                    @Html.AntiForgeryToken()
                                    @Html.Hidden("requestTitle", m.RequestName)
                                    @Html.Hidden("refId", m.ReqParcelId) 
                                    @Html.Hidden("AppPrcGrpId", 7)
                                    @Html.Hidden("refCode", m.IcmReqCode)
                                    @Html.Hidden("applyToEmpId", GimsMembership.CurrentEmpId)
                                    @Html.Hidden("confirmAs", "P")
                                    @Html.Hidden("approveAs", "A")
                                    @Html.Hidden("amount", 0)

                                    if (requestParcelDtls.Any(o => o.ReqId == m.ReqParcelId))
                                    {
                                        <button type="submit" class="btn button-standard-width btn-small btn-yellow btn-mini" 
                                                data-rel="tooltip" data-href="@Url.Action("CreateAskApproval", "AskForApproval")" >
                                            <i class="icon-plus bigger-120"></i> ส่งเรื่องขอเบิก
                                        </button>
                                    }
                                    else
                                    {
                                        <a class="btn button-standard-width btn-small btn-yellow btn-mini" data-rel="tooltip" disabled="disabled" title="กรุณาเลือกรายการวัสดุ">
                                            <i class="icon-plus bigger-120"></i> ส่งเรื่องขอเบิก
                                        </a>
                                    }
                                
                                }
                            }  
                        </div>
                    </td>
                </tr>
            }
        </tbody>
    </table>
</div>

@section scripts {

    <script type="text/javascript">

        function DelEvent() {
            bootbox.alert("ถ้าต้องการลบรายการนี้ กรุณาเข้าไปลบรายละเอียดให้หมดก่อน จึงจะสามารถลบได้");
        }

        $("#btnSend").click(function () {
            bootbox.alert("รายการนี้ยังไม่มีรายการขอเบิก จึงไม่สามารถส่งเรื่องขอเบิกได้");
        });

        $(function () {
            var oTable1 = $('#table_request_parcel').dataTable({
                "aoColumns": [
                  null, null, null, null, null, null, null,
                  { "bSortable": false }
                ]
            });

            $('table th input:checkbox').on('click', function () {
                var that = this;
                $(this).closest('table').find('tr > td:first-child input:checkbox')
                .each(function () {
                    this.checked = that.checked;
                    $(this).closest('tr').toggleClass('selected');
                });
            });

            $('[data-rel=tooltip]').tooltip();
        })

    </script>

}
